package practice;

import java.util.Scanner;

public class GetGold {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (true) {
            int m = sc.nextInt();
            int n = sc.nextInt();
            int k = sc.nextInt();
            int[][] map = new int[m][n];
            boolean[][] visited = new boolean[m][n];
            int res = dfs(map, visited, k, 0, 0);
            System.out.println(res);
        }
    }

    private static int dfs(int[][] map,boolean[][] visited,int k,int x,int y) {
        // 越界或者被访问了或者不符合题目条件
        if (x < 0 || y < 0 || x >= map.length || y >= map[0].length || visited[x][y] || (x + y > k)) {
            return 0;
        }

        visited[x][y] = true;

        // 当前格子的黄金数为1克
        int currentGold = 1;

        // 向上、下、左、右四个方向分别搜索，并取其中最多黄金数的结果
        currentGold+=dfs(map, visited, k, x - 1, y);
        currentGold+=dfs(map, visited, k, x + 1, y);
        currentGold+=dfs(map, visited, k, x, y - 1);
        currentGold+=dfs(map, visited, k, x, y + 1);

        // 返回当前格子和四个方向中能够获取的最大黄金数量
        return currentGold;
    }
}
